package com.decent.ejfadmin.user.service;


import com.decent.ejfadmin.common.bean.Announcement;
import com.decent.ejfadmin.common.bean.MessageBean;
import com.decent.ejfadmin.common.bean.Page;

import java.util.List;

/**
 * 会员公告
 *
 * @author weicx
 * @date 2018/07/26
 */
public interface UserAnnouncementService {
    /**
     * 新增公告
     *
     * @param announcement 公告类
     * @param state        所选会员是否可读：0可读  1不可读
     * @return
     */
    MessageBean addAnnouncement(Announcement announcement, Integer state);

    /**
     * 修改公告
     *
     * @param announcement 公告实体类
     * @param state        所选会员是否可读：0可读  1不可读
     * @param operate      操作 0修改 1删除
     * @return
     */
    MessageBean updateAnnouncement(Announcement announcement, Integer state, Integer operate);

    /**
     * 分页查询公告
     *
     * @param page      分页组件
     * @param beginTime 起始时间
     * @param endTime   结束时间
     * @return MemberMessage
     */
    Page queryAnnouncement(Page page, String beginTime, String endTime);

    /**
     * 新增公告模板
     *
     * @param announcement 公告类
     * @param operator     操作 0：新增 1：修改
     * @return
     */
    MessageBean addAnnouncementModel(Announcement announcement, Integer operator);

    /**
     * 查询公告模板
     *
     * @return
     */
    List getAnnouncementModel();

    /**
     * 查询公告模板内容
     *
     * @param id
     * @return
     */
    String getAnnouncementModelContent(Integer id);

    /**
     * 查看/修改公告时转换USERID为USERACCOUNT返回
     *
     * @param ids id   会员ID
     * @return
     */
    String getReadableAccount(String ids);

    /**
     * 查询公告列表
     *
     * @param id 公告Id
     * @return 公告信息
     */
    Announcement queryAnnouncementById(Integer id);
}
